Copyright: TeddyWare 1994
Citation: Help for ModemSta


ModemSta: Modem status iconic indicator for Windows using 3D animated icon.

Help Index for ModemSta and QuasiModem

Modem status iconic indicator for Windows using 3D animated icon.    ©  TeddyWare 1994

Select one of sections below by clicking on it with the left mouse button or by using the Tab key to move the highlight and pressing Enter. For information on how to use Help, press F1 or choose Using Help from the Help menu.

Installation

Introduction

Settings

The indicator lights and the status signals

QuasiModem - stand-alone ring indicator

Comments and limitations

About the program

How to register

Acknowledgements

Revision history


  Installation

It is very simple:

Copy modemsta.exe, modemsta.hlp and quasimod.exe to a directory of You choice. Also copy the ctl3d.dll to Your Windows system directory (e.g. c:\win\system) if You did not have ctl3d.dll before. If You have a newer version of ctl3d.dll, do not overwrite it.

If You have used ModemSta version 1.0 or 1.1, You should delete the old modemsta.ini in the Windows directory since the structure of the ini-file changed in version 1.2.

You can start ModemSta in any of these four ways:

* Select the Program Manager Run... option and type modemsta.exe. Include the pathname, e.g. c:\win\share\modemsta.exe, if the directory is not in Your path.

* Select the Program Manager New... option to create a ModemSta icon which you can double-click to start ModemSta.

* Add (PATHNAME) modemsta.exe to the [Load] section of your win.ini file to start ModemSta automatically each time you start Windows.

* Add ModemSta icon to the 'StartUp Group' (copy or drag the icon into this group).

Uninstall: Delete modemsta.exe, modemsta.hlp and quasimod.exe (in the directory of Your choice). modemsta.ini, modemsta.ri, quasimod.ri and modemsta.dcd may also have been generated by the program and should be deleted from the Windows directory and ModemSta/QuasiModem's directory (see below).

You may also consider to delete ctl3d.dll in the Windows system directory (e.g. c:\win\system), but this library file may be needed by some other applications.

In total, a ModemSta installation consists of the following files:

* Installed by You:

modemsta.exe	The program.

quasimod.exe	Stand-alone ring indicator.

modemsta.hlp	The help file & documentation.

+

ctl3d.dll	Microsoft's 3D dynamic link library.

* Generated by ModemSta, in the Windows directory:

modemsta.ini	Settings.

* Generated by ModemSta, in ModemSta/QuasiModem's directory:

modemsta.ri 	RI log file.

quasimod.ri 	RI log file.

modemsta.dcd	DCD log file.

No changes have been made to other files.


 Introduction

If You have an internal modem or an external modem out-of-sight of Your computer, this is the program for You! Internal modems save space on the table, save some cable mess at the backside of Your machine and generally save a few $ as they are cheaper. However, there is one drawback, and that is the lack of the status light display, showing what the modem is doing, if it is connected and if data is flowing.

ModemSta, the MODEM STATUS ICONIC INDICATOR, will help You operating Your modem by showing a small animated icon replica or a larger indicator display window (two formats available) of a typical modem's front panel!

A number of handy functions has also been added such as modem initialization, logging of incoming calls, connection time, additional status info and the ability to generate sound in parallel to or instead of the telephone's ring signal.

ModemSta offers the following features:

* For use with internal and external modems connected to any COM port. Automatically scans the ports at start-up to determine available ports.

* Can be started after other programs are connected to the com ports. Even possible to start during a connected modem session.

* Several copies can be run in parallel to monitor activity of several COM ports. Each COM port has its own settings which are saved in the modemsta.ini-file.

Program starts using the last used port as default, but can be started with any port, using a command line parameter.

* Remembers all its settings between sessions. Settings are port specific and are saved when You switch between ports or end the program.

* Square or horizontal views and ANIMATED icon to display status lights of the signals CTS, RI, DCD, DSR, TD and RD.

* User selectable 'lamp' color on grey background 3D look.

* User selectable status lamps update rate.

* 'Always on top' setting or 'Auto detect on top' feature. When the auto detect mode is selected, ModemSta goes automatically into Always on top mode during Receive/Transmit activity. After a user adjustable inactivity time, Always on top is deactivated until further Receive/Transmit activity is detected.

* Send an initialization string to the modem, either automatically at start-up or from the 'Setup & About' dialog.

* Display additional port status info (bytesize, parity, stopbits and baudrate) in the title bar.

* Play a .wav file when the telephone rings (RI is detected). Can be used e.g. when the computer is used as a fax machine and there is no telephone connected in parallel to the computer.

Note that this only works on an open comm port, i.e. if You have a communication or fax program started and connected to the port.

The program "QuasiModem", stand-alone ring indicator, has been added to circumvent this limitation.

* RI logging to file. Log file shows list of incoming calls with date, time and number of signals. Can be used in parallel to an answering machine to log actual time of calls. Show and delete log-files from the "Setup & About" dialog box.

Note that this only works on an open comm port, i.e. if You have a communication or fax program started and connected to the port.

The program "QuasiModem", stand-alone ring indicator, has been added to circumvent this limitation.

* DCD logging to file. Log file shows list of start of connection, end of connection and calculates up-time.

Show and delete log-files from the "Setup & About" dialog box.


Settings

ModemSta requires Windows 3.1 or higher. If You are using Windows for Workgroups 3.11 (WfWG), ModemSta WILL NOT SHOW any port status unless the port is open (comm/fax program started or QuasiModem started).

If You have problems, see "Troubleshooting" under section Comments and limitations.

ModemSta will check all possible ports and select the first available port (e.g. COM1) first time You run the program. ModemSta will then remember all its settings from session to session. COM port number can be changed using the SYSTEMS MENU.

Several copies of ModemSta can be run in parallel to monitor activity of several COM ports. Each COM port has its own settings which are saved in the modemsta.ini-file. ModemSta will at start-up use the last port as default, but another port can be given as a command line parameter: "modemsta.exe 2" will start a copy of ModemSta monitoring the activity on COM2 etc. ModemSta will not accept multiple parameters, so one command line for each running copy of ModemSta is required.

If You try starting ModemSta with a non-existing port on the command line (e.g. "modemsta.exe 5" = COM5), a message box will appear and ModemSta will close. If You give a value outside the interval [1..9], ModemSta will ignore the parameter and use the settings from the .ini file.

All other settings are made from the 'Setup & About' dialog:

- Modem initialization:

* Toggle the 'Send Modem Init String' checkbox on/off if You want ModemSta to send the modem init string to the modem at start-up.

* Push the 'Send Modem Init String NOW!' button to send the init string to the modem at this time. The selected active port is shown under the 'Send Modem Init String' checkbox. Ports are changed in the SYSTEMS MENU.

* Enter the modem initialization string into the 'Modem Init String' edit box.

- Port Status:

Toggle the 'Port Status in Title' checkbox on/off if You want ModemSta to show additional port status information in the title. Default is the port (e.g. COM1), but bytesize, parity, stop bits and baudrate can also be shown (e.g. COM1 - 8N1 9600).

Depending on the font size, resolution and orientation of ModemSta, some of the status info may not be visible.

- Lamp Color:

* Scroll or enter the RGB values of Your preferred lamp color to be used by ModemSta. Settings will affect both the iconic and non-iconic views. The color is immediately updated (move the Setup & About window to inspect the colors if ModemSta is covered). When running in 256 color mode, the current version of ModemSta will only show the 20 available system colors.

- Orientation:

Select 'Square' or 'Horizontal' view for the non-iconic view of ModemSta. The format is immediately updated if ModemSta is in its non-iconic mode (move the Setup & About window to inspect the format if ModemSta is covered).

- On Top features:

* Select 'Always on Top' to keep ModemSta always visible.

* Select 'Auto detect on Top' to activate ModemSta's auto detected 'Always On Top' feature: ModemSta listens for activity on the Receive/Transmit lines (RD & TD) and goes into 'Always On Top' mode when activity is detected.

After a predetermined time, ModemSta deactivates the 'Always On Top' mode until further activity on the Receive/Transmit lines. The time is set in the 'AutoTimeOut' edit box.

* Select 'None' to deselect any On Top features.

- Update lamps:

* Scroll or enter the desired update rate for the status lamps. Value can be between 1 update/second up to 18 updates/second (the resolution of the Windows timer used for this is around 55 ms or 18.2 updates/second). Do not use too high values for slower CPUs! Default value is 2. QuasiModem uses a fixed value of 10.

- RI activity:

* Toggle the 'Play Sound when Ring Signal detected' checkbox on/off if You want ModemSta to play a .wav file when RI is detect (the telephone rings).

* Select the .wav file (from the Windows directory) to be played, using the Combo Dropdownlist box.

NB. RI activity only works on an open comm port, i.e. if You have a communication or fax program started and connected to the port.

- RI logging:

* Toggle the 'Log Incoming Calls (RI high)' checkbox on/off if You want ModemSta to log RI activity to file. If the log file does not exist, it will be created, otherwise new entries are added at the end of the file.

The log file, modemsta.ri, will be placed in ModemSta/QuasiModem's directory and will look like this:

Call at:  1994-02-15   19:41:11     Number of signals = 4

Call at:  1994-02-15   19:52:22     Number of signals = 1

Call at:  1994-02-15   20:06:56     Number of signals = 7

......

Date is given in European YYYY-MM-DD form and time using 24 h format.

NB. RI logging only works on an open comm port, i.e. if You have a communication or fax program started and connected to the port. Use QuasiModem  for stand-alone RI indication!

The SHOW button starts Notepad with modemsta.ri.

The DELETE button deletes modemsta.ri.

- DCD logging:

* Toggle the 'Log Connections (DCD high)' checkbox on/off if You want ModemSta to log DCD activity to file. If the log file does not exist, it will be created, otherwise new entries are added at the end of the file.

The log file, modemsta.dcd, will be placed in ModemSta/QuasiModem's directory and will look like this:

Connected at:    1994-02-15   18:48:33

Disconnected at: 1994-02-15   18:51:49     Connect time =  0:03:17

Connected at:    1994-02-15   19:52:31

Disconnected at: 1994-02-15   20:05:39     Connect time =  0:13:08

......

Date is given in European YYYY-MM-DD form, time using 24 h format and connect time in HH:MM:SS.

The DCD up-time before making an entry into the log can changed by the user. Open the modemsta.ini file in the Windows directory and look for the line 'DCD Interval=30' (30 is the default value).

This is the time (in seconds) DCD is continuously detected before an entry into the log file is made. Shorter connections (e.g. modem call-back procedures) will not cause any entry in the log file.

The SHOW button starts Notepad with modemsta.dcd.

The DELETE button deletes modemsta.dcd.


The indicator lights and the status signals

The six indicator lights are:

CTS = Clear To Send. This signal indicates that the modem is ready to accept data from the computer.

RI = Ring Indicator. This signal indicates an incoming call. It is an hardware equivalent of the Hayes modem's RING message.

DCD = Data Carrier Detect. Indicates that a signal carrier has been detected, which usually means that the modem is connected to another modem.

DSR = Data Set Ready. Indicated that the modem is active and waiting instructions.

TD = Transmit data. Data is being transmitted from the computer to the modem.

RD = Receive data. Data is being received to the computer from the modem.


QuasiModem - stand-alone ring indicator

QuasiModem was written since it appears that the modem ring indicator function (RI) works only when the com port is open, i.e. a comm program or fax program is attached to the port. Instead of adding a OpenComm/CloseComm toggling function to ModemSta, QuasiModem (remember who rings the bells in Notre Dame?) was created using a subset of ModemSta's functions.

The preferred usage is:

* ModemSta for RI detection and activity status when using a comm/fax program.

* QuasiModem for stand-alone RI detection.

Settings:

The settings for QuasiModem are the same as for ModemSta, see Settings section. However, the "Orientation", "Port Status in Title", "Lamp Color", "Auto Detect on Top", "Update lamps" and "DCD logging" features have not been included in QuasiModem.

The RI logging will be saved in quasimod.ri. in ModemSta/QuasiModem's directory.

QuasiModem shares the .INI-file "MODEMSTA.INI" with ModemSta.

Registration is valid for both ModemSta and QuasiModem. Registration info is shared between the applications so registration has to be entered only once.

The HELP file includes information about ModemSta and QuasiModem.

Limitations:

Since the IRQ is shared between COM1 and COM3 or COM2 and COM4, opening comm ports that share the same IRQ will lead to character loss etc., even if there is no hardware (except for the computer I/O port) connected to the port. If You have a modem on COM1, opening QuasiModem on COM3 (e.g. just for testing) will lead to comm errors on COM1.


Comments and limitations

Typical operation:

A normal modem status at computer start-up before trying to connect to another modem would normally be CTS and DSR indicators active. Some modems may also indicate DCD before a connection has been established (my old internal modem showed this light after power-on).

Many modems can be programmed to save a new "permanent" setup in a non-volatile RAM. On Hays-type modems, the command AT&C1 can also be used to initiate the modem to show DCD active only when a connection has been made. The 'Send Modem Init String' function can do this.

Please note that no information can be shown before a comm/fax program is started (com port is opened) when using Windows for Workgroups 3.11.

You can start ModemSta during a connected session, but avoid starting ModemSta during a high-speed file-transfer, since it may disrupt the file-transfer.

An example using Win 3.1:

In my own computer, I have an internal modem on COM1, the mouse connected to COM2, COM3 enabled but not connected and COM4 not enabled.

ModemSta reports that COM1 & COM3 are available.

COM1 shows the following status lights: CTS and DSR (and perhaps DCD, see above) at start-up, RI when the telephone rings, DCD when connected and TD & RD whenever data (characters) are transmitted. COM3 shows no status lights.

RD & TD:

Most data communication is made without any local echo; the host machine (or modem) is echoing the character back to Your screen (the terminal). This means that inputting data from Your keyboard will normally force both the TD and RD signal active.

Together with DOS communication:

Generally, using ModemSta together with DOS comm programs is neither recommended nor especially useful:

* If a DOS communication program in a DOS box accesses the com ports, ModemSta will not update the status of the com lights. This limitation is not in itself due to ModemSta, but to the communication drivers in Windows.

* It is not safe to start ModemSta while a DOS comm program is running. A "device contention" is likely to appear which may interrupt Your DOS comm session. This limitation may be fixed in future versions of ModemSta.

About using COM5 - ...

From Microsoft Knowledge Base, article Q83449:

"The Windows 3.1 communications driver provides access to standard MS-DOS serial ports (COM1, COM2, COM3, and COM4). Third-party serial adapters with more than four ports can be used in Windows with special drivers available from their manufacturers. Windows allows a maximum of nine serial ports (COM1-COM9)."

Because of this, ModemSta supports COM1-COM9, but this has not yet been tested on actual hardware. Comments are welcomed!

Ring Indicator, RI logging:

The ring indicator (RI) only works on an open comm port, i.e. if You have a communication program started and connected to the port. A subset of ModemSta has been used to write QuasiModem, the stand-alone ring indicator.

ModemSta actually detects and signals RI at the end of a ring signal. You will notice this at high update rates.

Lamp color:

When running in 256 color mode, the current version of ModemSta will only show the 20 available system colors.

Troubleshooting:

* ModemSta depends closely on the COMM.DRV in the Windows system directory.

ModemSta may or may not be compatible with other vendors replacement for COMM.DRV in the system directory. ModemSta has successfully been tested with CYBERCOM.DRV from CyberSoft Corporation Pty Ltd, and WFXCOMM.DRV from Delrina Technology Inc. (Winfax) as well as Windows 3.1 COMM.DRV.

Check in Your SYSTEM.INI, in the Windows directory, under the [Boot] section for a line like "comm.drv=comm.drv" or "comm.drv=wfxcomm.drv" to determine that You have a comm driver loaded and the name of it. If there is a problem with the comm driver, the most likely symptom is that the status of CTS, DSR and DCD are not detected. Please report problems to the author, see section About the program.

* Do not try to communicate with an internal modem that is switched off, as can be done with the modem in some laptops.

* If You are using WfWG, ModemSta may indicate that COM3 or COM4 are available, even if You do not have any hardware installed. It appears to be a bug in WfWG.

If You disable the following two lines in SYSTEM.INI in the systems directory (e.g. c:\wfw\system) for each incorrect com port by putting a semicolon first on the line:

;COM3Irq=4

;COM3Base=03E8

WfWG will report the correct com ports.

QuasiModem only detects not busy ports and have no problem here.


About the program

ModemSta was written using Borland's Turbo Pascal for Windows (TPW) version 1.5 and Borland's Resource Workshop version 1.02. The Help-file was written using Word 2.0.

It is distributed as shareware, which means that if You like it and continue to use it, You must register. Read more in the How to Register section.

The author can be contacted in the following ways:

Internet: ted@mest.ericsson.se

Fidonet: 2:201/236 (Ted Johansson).

Mail: Ted Johansson, Valborgsmässovägen 25, S-126 37 HÄGERSTEN, SWEDEN.


 How to Register

ModemSta is distributed as shareware.  It is not free!  You may use it for 21 days before registering.

Registration costs US $10 or equivalent in Your currency.  Just write a letter with your name and address (and email address), and say you are registering ModemSta/QuasiModem.  Send it with a check or international money order (cash, one 10 USD bill, will also be OK) to the following address:

Ted Johansson

Valborgsmässovägen 25

S-126 37 HÄGERSTEN

SWEDEN

A registration number which personalize Your copy will be sent to You.

The registration information will be displayed in the 'Setup & About' dialog.

Site licenses are also available.  Please write for information.

Why register?

By registering, you support shareware development and affordable Windows software! Your contribution will help promote future shareware development and the development of future versions of this program. Shareware authors can only afford to spend the time to write these programs if the users register.

And:

* Your registration will be valid for all future version of ModemSta.

* Support if You have problems with ModemSta (email or surface mail).

* If You include an Internet or FidoNet address with the registration, You will be informed about uploads to ftp sites of new versions of ModemSta.


Acknowledgements

Anders Frihagen, University of Bergen (Norway), and Sean C. Malloy, Texas A&M University (USA), for the idea to have ModemSta play a .wav file when the telephone rings. And this also lead to the stand-alone ring indicator QuasiModem.

David Clay Patton, University of Alabama at Birmingham (USA), for wanting to see connection status for different protocols. It made me add the possibility of displaying bytesize, parity, stopbits and baudrate in the window title bar.

C. A. La Varre, Washington, D.C. (USA) for debugging and comments regarding version 1.2/1.3 of ModemSta.


Revision history

Dec. 21, 1993: Version 1.0. First release.

Feb. 13, 1994: Version 1.1. Limited public release.

- Added: COMx (x=1..GetMaxCOM) can be used. Only ports active at start-up shown on menu. New 'Setup & About' dialog. Modem initialization functions. User selectable lamp color. RI activity => play .wav-sound file from the windows directory. Port info in the title bar.

- Changed: No need to maximize icon when finding/saving start-up position at program end.

- Fixed: Misplacement in the position saved in the .ini file (x+1,y+2).

- Fixed: Fooled halt of ModemSta when Windows not closing.

Jun. 8, 1994: Version 1.2. Lot of new features!

- Added: RI and DCD activity logging. 3D-look using 'ctl3d.dll' (must be distributed together with ModemSta). Shareware info & registration. Help file, Help button in the 'Setup & About' dialog and F1 triggering in the dialog. Ability to handle several instances. Adjustable timer interval for updating the lamp status.

- Fixed: Lamp color problems using 256 colors or more. Still only 20 colors available in 256 color mode.

- Fixed: Now compatible with Windows for Workgroups 3.11.

Jun. 14, 1994: Version 1.3. Even more features...

- Added: Ability to show (edit) and delete RI and DCD-log files.

- Moved log files to local directory. QuasiModem now has its own RI-log file.

- Fixed: WfWG not detecting COM4.

- Fixed: 1024x786, Large font display, causes ModemSta's y-coordinate to change during update.


CTS
CTS =

Clear To Send. This signal indicates that the modem is ready to accept data from the computer.


RI
RI =

Ring Indicator. This signal indicates an incoming call. It is an hardware equivalent of the Hayes modem's RING message. ModemSta actually detects and signals at the end of a ring signal.


DCD
DCD =

Data Carrier Detect. Indicates that a signal carrier has been detected, which usually means that the modem is connected to another modem.


DSR
DSR =

Data Set Ready. Indicates that the modem is active and waiting instructions.


TD
TD =

Transmit data. Data is being transmitted from the computer to the modem


RD
RD =

Receive data. Data is being received to the computer from the modem


Windows
The directory where the Windows files reside, e.g. C:\WIN


RGB
RGB =

Red, Green, Blue. A color based on the parameters supplied and the color capabilities of the output device. The intensity for each argument can range from 0 through 255. If all three intensities are specified as zero, the result is black. If all three intensities are specified as 255, the result is white.